#include <iostream>

using namespace std;

/*
	类的大小
*/
class Rect
{
public:
	//方法 
	void getArea(); //驼峰命名  get_area  pthread_create
	void getGirth();
	//定义方法给w，h设置值，间接地使用w和h
	void setAttr(float _w,float _h);
	//显示成员属性的地址
	void showAddr();
private:
	//属性
	float w;  
	float h; 
};

class Test
{
	
};

//::称为类作用域解析运算符
void Rect::getArea()  //Rect::告知编译器getArea这个方法属于Rect类成员方法
{
	cout<<"面积是: "<<w*h<<endl;
}

void Rect::getGirth()
{
	cout<<"周长是: "<<2*(w+h)<<endl;
}

void Rect::setAttr(float _w,float _h)
{
	w=_w;
	h=_h;
}

void Rect::showAddr()
{
	cout<<"宽地址: "<<&w<<endl;
	cout<<"高地址: "<<&h<<endl;
}

int main(int argc,char **argv)
{
	//创建矩形类的对象
	Rect r1;
	Rect r2;
	Rect r3;
	r1.showAddr();
	r2.showAddr();
	r3.showAddr();
	
	//每个对象都拥有独立的成员属性
	//所有的对象共用一套成员方法
	cout<<"Rect大小是: "<<sizeof(Rect)<<endl;
	cout<<"Test大小是: "<<sizeof(Test)<<endl;
}